[INFO] cloning repository https://github.com/KhoanDoanVan/mini_blockchain
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/KhoanDoanVan/mini_blockchain" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKhoanDoanVan%2Fmini_blockchain", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKhoanDoanVan%2Fmini_blockchain'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0a203fa5d4503a41021f1c70a6ded0efa24bf2f2
[INFO] fixing KhoanDoanVan/mini_blockchain against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=start=2015 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKhoanDoanVan%2Fmini_blockchain" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/KhoanDoanVan/mini_blockchain
[INFO] finished tweaking git repo https://github.com/KhoanDoanVan/mini_blockchain
[INFO] tweaked toml for git repo https://github.com/KhoanDoanVan/mini_blockchain written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/KhoanDoanVan/mini_blockchain on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/KhoanDoanVan/mini_blockchain already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded jiff-static v0.2.18
[INFO] [stderr]   Downloaded secp256k1 v0.28.2
[INFO] [stderr]   Downloaded portable-atomic v1.13.0
[INFO] [stderr]   Downloaded jiff v0.2.18
[INFO] [stderr]   Downloaded secp256k1-sys v0.9.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 37c9e833dee07cf6689dac4af1683aca7538b8bff3ba99393b50092938668f4e
[INFO] running `Command { std: "docker" "start" "37c9e833dee07cf6689dac4af1683aca7538b8bff3ba99393b50092938668f4e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "37c9e833dee07cf6689dac4af1683aca7538b8bff3ba99393b50092938668f4e" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "37c9e833dee07cf6689dac4af1683aca7538b8bff3ba99393b50092938668f4e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "37c9e833dee07cf6689dac4af1683aca7538b8bff3ba99393b50092938668f4e" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=start=2015", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.105
[INFO] [stderr]    Compiling quote v1.0.43
[INFO] [stderr]    Compiling zerocopy v0.8.33
[INFO] [stderr]    Compiling find-msvc-tools v0.1.8
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]    Compiling zmij v1.0.15
[INFO] [stderr]     Checking anstyle v1.0.13
[INFO] [stderr]    Compiling cc v1.2.53
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]     Checking jiff v0.2.18
[INFO] [stderr]     Checking iana-time-zone v0.1.64
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking chrono v0.4.43
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling secp256k1-sys v0.9.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking env_filter v0.1.4
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking env_logger v0.11.8
[INFO] [stderr]     Checking secp256k1 v0.28.2
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking rust_blockchain v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: expected identifier, found `)`
[INFO] [stdout]   --> src/transaction/transaction.rs:81:62
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn sign(&mut self, keypair: &crate::crypto::keypair::) {
[INFO] [stdout]    |                                                              ^ expected identifier
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found `)`
[INFO] [stdout]   --> src/transaction/transaction.rs:81:62
[INFO] [stdout]    |
[INFO] [stdout] 81 |     pub fn sign(&mut self, keypair: &crate::crypto::keypair::) {
[INFO] [stdout]    |                                                              ^ expected identifier
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]  --> src/crypto/keypair/address.rs:6:51
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this derive macro
[INFO] [stdout]   |
[INFO] [stdout] 1 + use serde::Serialize;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]  --> src/crypto/keypair/address.rs:6:62
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                              ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this derive macro
[INFO] [stdout]   |
[INFO] [stdout] 1 + use serde::Deserialize;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Serialize` in this scope
[INFO] [stdout]  --> src/crypto/keypair/address.rs:6:51
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this derive macro
[INFO] [stdout]   |
[INFO] [stdout] 1 + use serde::Serialize;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find derive macro `Deserialize` in this scope
[INFO] [stdout]  --> src/crypto/keypair/address.rs:6:62
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                              ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this derive macro
[INFO] [stdout]   |
[INFO] [stdout] 1 + use serde::Deserialize;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected value, found module `keypair`
[INFO] [stdout]   --> src/transaction/transaction.rs:83:26
[INFO] [stdout]    |
[INFO] [stdout] 83 |         self.signature = keypair.sign(data.as_bytes());
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use the path separator to refer to an item
[INFO] [stdout]    |
[INFO] [stdout] 83 -         self.signature = keypair.sign(data.as_bytes());
[INFO] [stdout] 83 +         self.signature = keypair::sign(data.as_bytes());
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `mem::take` and `write`
[INFO] [stdout]  --> src/crypto/hash/hash.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{fmt::{self, write}, mem::take};
[INFO] [stdout]   |                       ^^^^^   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Add`
[INFO] [stdout]  --> src/crypto/keypair/public_key.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Add;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/crypto/keypair/address.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Add`
[INFO] [stdout]  --> src/transaction/transaction.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::ops::Add;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected value, found module `keypair`
[INFO] [stdout]   --> src/transaction/transaction.rs:83:26
[INFO] [stdout]    |
[INFO] [stdout] 83 |         self.signature = keypair.sign(data.as_bytes());
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use the path separator to refer to an item
[INFO] [stdout]    |
[INFO] [stdout] 83 -         self.signature = keypair.sign(data.as_bytes());
[INFO] [stdout] 83 +         self.signature = keypair::sign(data.as_bytes());
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `mem::take` and `write`
[INFO] [stdout]  --> src/crypto/hash/hash.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{fmt::{self, write}, mem::take};
[INFO] [stdout]   |                       ^^^^^   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Add`
[INFO] [stdout]  --> src/crypto/keypair/public_key.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Add;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/crypto/keypair/address.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Add`
[INFO] [stdout]  --> src/transaction/transaction.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::ops::Add;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: cannot initialize a tuple struct which contains private fields
[INFO] [stdout]   --> src/crypto/keypair/public_key.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         Address(addr)
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: constructor is not visible here due to private fields
[INFO] [stdout]   --> src/crypto/keypair/address.rs:7:20
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Address([u8; 20]);
[INFO] [stdout]    |                    ^^^^^^^^ private field
[INFO] [stdout] help: consider making the field publicly accessible
[INFO] [stdout]   --> src/crypto/keypair/address.rs:7:20
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Address(pub [u8; 20]);
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: cannot initialize a tuple struct which contains private fields
[INFO] [stdout]   --> src/crypto/keypair/keypair.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 21 |             public_key: PublicKey(public_key.serialize().to_vec()) 
[INFO] [stdout]    |                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: constructor is not visible here due to private fields
[INFO] [stdout]   --> src/crypto/keypair/public_key.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct PublicKey(Vec<u8>);
[INFO] [stdout]    |                      ^^^^^^^ private field
[INFO] [stdout] help: consider making the field publicly accessible
[INFO] [stdout]   --> src/crypto/keypair/public_key.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct PublicKey(pub Vec<u8>);
[INFO] [stdout]    |                      +++
[INFO] [stdout] help: a local variable with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 21 -             public_key: PublicKey(public_key.serialize().to_vec()) 
[INFO] [stdout] 21 +             public_key: public_key(public_key.serialize().to_vec()) 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: cannot initialize a tuple struct which contains private fields
[INFO] [stdout]   --> src/crypto/keypair/public_key.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         Address(addr)
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: constructor is not visible here due to private fields
[INFO] [stdout]   --> src/crypto/keypair/address.rs:7:20
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Address([u8; 20]);
[INFO] [stdout]    |                    ^^^^^^^^ private field
[INFO] [stdout] help: consider making the field publicly accessible
[INFO] [stdout]   --> src/crypto/keypair/address.rs:7:20
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Address(pub [u8; 20]);
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: cannot initialize a tuple struct which contains private fields
[INFO] [stdout]   --> src/crypto/keypair/keypair.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 21 |             public_key: PublicKey(public_key.serialize().to_vec()) 
[INFO] [stdout]    |                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: constructor is not visible here due to private fields
[INFO] [stdout]   --> src/crypto/keypair/public_key.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct PublicKey(Vec<u8>);
[INFO] [stdout]    |                      ^^^^^^^ private field
[INFO] [stdout] help: consider making the field publicly accessible
[INFO] [stdout]   --> src/crypto/keypair/public_key.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct PublicKey(pub Vec<u8>);
[INFO] [stdout]    |                      +++
[INFO] [stdout] help: a local variable with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 21 -             public_key: PublicKey(public_key.serialize().to_vec()) 
[INFO] [stdout] 21 +             public_key: public_key(public_key.serialize().to_vec()) 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Serialize` is not satisfied
[INFO] [stdout]     --> src/transaction/transaction.rs:8:24
[INFO] [stdout]      |
[INFO] [stdout]    8 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]      |                        ^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout] ...
[INFO] [stdout]   13 |     pub from: Address,
[INFO] [stdout]      |     ----------------- required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Address`
[INFO] [stdout]     --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub struct Address([u8; 20]);
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Address` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `Serialize`:
[INFO] [stdout]                &'a T
[INFO] [stdout]                &'a mut T
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]              and 132 others
[INFO] [stdout] note: required by a bound in `transaction::transaction::_::_serde::ser::SerializeStruct::serialize_field`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/ser/mod.rs:1917:21
[INFO] [stdout]      |
[INFO] [stdout] 1915 |     fn serialize_field<T>(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error>
[INFO] [stdout]      |        --------------- required by a bound in this associated function
[INFO] [stdout] 1916 |     where
[INFO] [stdout] 1917 |         T: ?Sized + Serialize;
[INFO] [stdout]      |                     ^^^^^^^^^ required by this bound in `SerializeStruct::serialize_field`
[INFO] [stdout]      = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]     --> src/transaction/transaction.rs:13:15
[INFO] [stdout]      |
[INFO] [stdout]   13 |     pub from: Address,
[INFO] [stdout]      |               ^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `Deserialize<'_>` is not implemented for `Address`
[INFO] [stdout]     --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub struct Address([u8; 20]);
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `Address` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `Deserialize<'de>`:
[INFO] [stdout]                &'a Path
[INFO] [stdout]                &'a [u8]
[INFO] [stdout]                &'a str
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]              and 145 others
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/de/mod.rs:1771:12
[INFO] [stdout]      |
[INFO] [stdout] 1769 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1770 |     where
[INFO] [stdout] 1771 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]     --> src/transaction/transaction.rs:15:13
[INFO] [stdout]      |
[INFO] [stdout]   15 |     pub to: Address,
[INFO] [stdout]      |             ^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `Deserialize<'_>` is not implemented for `Address`
[INFO] [stdout]     --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub struct Address([u8; 20]);
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `Address` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `Deserialize<'de>`:
[INFO] [stdout]                &'a Path
[INFO] [stdout]                &'a [u8]
[INFO] [stdout]                &'a str
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]              and 145 others
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/de/mod.rs:1771:12
[INFO] [stdout]      |
[INFO] [stdout] 1769 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1770 |     where
[INFO] [stdout] 1771 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]     --> src/transaction/transaction.rs:13:15
[INFO] [stdout]      |
[INFO] [stdout]   13 |     pub from: Address,
[INFO] [stdout]      |               ^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `Deserialize<'_>` is not implemented for `Address`
[INFO] [stdout]     --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub struct Address([u8; 20]);
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `Address` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `Deserialize<'de>`:
[INFO] [stdout]                &'a Path
[INFO] [stdout]                &'a [u8]
[INFO] [stdout]                &'a str
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]              and 145 others
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/de/mod.rs:1916:12
[INFO] [stdout]      |
[INFO] [stdout] 1914 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1915 |     where
[INFO] [stdout] 1916 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]     --> src/transaction/transaction.rs:15:13
[INFO] [stdout]      |
[INFO] [stdout]   15 |     pub to: Address,
[INFO] [stdout]      |             ^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `Deserialize<'_>` is not implemented for `Address`
[INFO] [stdout]     --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub struct Address([u8; 20]);
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `Address` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `Deserialize<'de>`:
[INFO] [stdout]                &'a Path
[INFO] [stdout]                &'a [u8]
[INFO] [stdout]                &'a str
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]              and 145 others
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/de/mod.rs:1916:12
[INFO] [stdout]      |
[INFO] [stdout] 1914 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1915 |     where
[INFO] [stdout] 1916 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Serialize` is not satisfied
[INFO] [stdout]     --> src/transaction/transaction.rs:8:24
[INFO] [stdout]      |
[INFO] [stdout]    8 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]      |                        ^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout] ...
[INFO] [stdout]   13 |     pub from: Address,
[INFO] [stdout]      |     ----------------- required by a bound introduced by this call
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Address`
[INFO] [stdout]     --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub struct Address([u8; 20]);
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Address` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `Serialize`:
[INFO] [stdout]                &'a T
[INFO] [stdout]                &'a mut T
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]                (T0, T1, T2, T3, T4)
[INFO] [stdout]              and 132 others
[INFO] [stdout] note: required by a bound in `transaction::transaction::_::_serde::ser::SerializeStruct::serialize_field`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/ser/mod.rs:1917:21
[INFO] [stdout]      |
[INFO] [stdout] 1915 |     fn serialize_field<T>(&mut self, key: &'static str, value: &T) -> Result<(), Self::Error>
[INFO] [stdout]      |        --------------- required by a bound in this associated function
[INFO] [stdout] 1916 |     where
[INFO] [stdout] 1917 |         T: ?Sized + Serialize;
[INFO] [stdout]      |                     ^^^^^^^^^ required by this bound in `SerializeStruct::serialize_field`
[INFO] [stdout]      = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]   --> src/transaction/transaction.rs:8:35
[INFO] [stdout]    |
[INFO] [stdout]  8 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Deserialize<'_>` is not implemented for `Address`
[INFO] [stdout]   --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Address([u8; 20]);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `Address` type
[INFO] [stdout]    = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]    = help: the following other types implement trait `Deserialize<'de>`:
[INFO] [stdout]              &'a Path
[INFO] [stdout]              &'a [u8]
[INFO] [stdout]              &'a str
[INFO] [stdout]              ()
[INFO] [stdout]              (T,)
[INFO] [stdout]              (T0, T1)
[INFO] [stdout]              (T0, T1, T2)
[INFO] [stdout]              (T0, T1, T2, T3)
[INFO] [stdout]            and 145 others
[INFO] [stdout] note: required by a bound in `transaction::transaction::_::_serde::__private228::de::missing_field`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/private/de.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]    |        ------------- required by a bound in this function
[INFO] [stdout] 25 | where
[INFO] [stdout] 26 |     V: Deserialize<'de>,
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]     --> src/transaction/transaction.rs:13:15
[INFO] [stdout]      |
[INFO] [stdout]   13 |     pub from: Address,
[INFO] [stdout]      |               ^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `Deserialize<'_>` is not implemented for `Address`
[INFO] [stdout]     --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub struct Address([u8; 20]);
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `Address` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `Deserialize<'de>`:
[INFO] [stdout]                &'a Path
[INFO] [stdout]                &'a [u8]
[INFO] [stdout]                &'a str
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]              and 145 others
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/de/mod.rs:1771:12
[INFO] [stdout]      |
[INFO] [stdout] 1769 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1770 |     where
[INFO] [stdout] 1771 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]     --> src/transaction/transaction.rs:15:13
[INFO] [stdout]      |
[INFO] [stdout]   15 |     pub to: Address,
[INFO] [stdout]      |             ^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `Deserialize<'_>` is not implemented for `Address`
[INFO] [stdout]     --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub struct Address([u8; 20]);
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `Address` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `Deserialize<'de>`:
[INFO] [stdout]                &'a Path
[INFO] [stdout]                &'a [u8]
[INFO] [stdout]                &'a str
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]              and 145 others
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/de/mod.rs:1771:12
[INFO] [stdout]      |
[INFO] [stdout] 1769 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1770 |     where
[INFO] [stdout] 1771 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/transaction/transaction.rs:67:39
[INFO] [stdout]     |
[INFO] [stdout]  67 |           let data = bincode::serialize(&(
[INFO] [stdout]     |  ____________________------------------_^
[INFO] [stdout]     | |                    |
[INFO] [stdout]     | |                    required by a bound introduced by this call
[INFO] [stdout]  68 | |             &self.from,
[INFO] [stdout]  69 | |             &self.to,
[INFO] [stdout]  70 | |             self.amount,
[INFO] [stdout] ...   |
[INFO] [stdout]  73 | |             self.nonce,
[INFO] [stdout]  74 | |         )).unwrap();
[INFO] [stdout]     | |_________^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Address`
[INFO] [stdout]    --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub struct Address([u8; 20]);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Address` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T,)
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 132 others
[INFO] [stdout]     = note: required for `&Address` to implement `Serialize`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `(&Address, &Address, u64, u64, u64, u64)` to implement `Serialize`
[INFO] [stdout] note: required by a bound in `bincode::serialize`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-1.3.3/src/lib.rs:108:8
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub fn serialize<T: ?Sized>(value: &T) -> Result<Vec<u8>>
[INFO] [stdout]     |        --------- required by a bound in this function
[INFO] [stdout] 107 | where
[INFO] [stdout] 108 |     T: serde::Serialize,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `serialize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]     --> src/transaction/transaction.rs:13:15
[INFO] [stdout]      |
[INFO] [stdout]   13 |     pub from: Address,
[INFO] [stdout]      |               ^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `Deserialize<'_>` is not implemented for `Address`
[INFO] [stdout]     --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub struct Address([u8; 20]);
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `Address` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `Deserialize<'de>`:
[INFO] [stdout]                &'a Path
[INFO] [stdout]                &'a [u8]
[INFO] [stdout]                &'a str
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]              and 145 others
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/de/mod.rs:1916:12
[INFO] [stdout]      |
[INFO] [stdout] 1914 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1915 |     where
[INFO] [stdout] 1916 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]     --> src/transaction/transaction.rs:15:13
[INFO] [stdout]      |
[INFO] [stdout]   15 |     pub to: Address,
[INFO] [stdout]      |             ^^^^^^^ unsatisfied trait bound
[INFO] [stdout]      |
[INFO] [stdout] help: the trait `Deserialize<'_>` is not implemented for `Address`
[INFO] [stdout]     --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]      |
[INFO] [stdout]    7 | pub struct Address([u8; 20]);
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `Address` type
[INFO] [stdout]      = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]      = help: the following other types implement trait `Deserialize<'de>`:
[INFO] [stdout]                &'a Path
[INFO] [stdout]                &'a [u8]
[INFO] [stdout]                &'a str
[INFO] [stdout]                ()
[INFO] [stdout]                (T,)
[INFO] [stdout]                (T0, T1)
[INFO] [stdout]                (T0, T1, T2)
[INFO] [stdout]                (T0, T1, T2, T3)
[INFO] [stdout]              and 145 others
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/de/mod.rs:1916:12
[INFO] [stdout]      |
[INFO] [stdout] 1914 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1915 |     where
[INFO] [stdout] 1916 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust_blockchain` (bin "rust_blockchain" test) due to 13 previous errors; 4 warnings emitted
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Deserialize<'de>` is not satisfied
[INFO] [stdout]   --> src/transaction/transaction.rs:8:35
[INFO] [stdout]    |
[INFO] [stdout]  8 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Deserialize<'_>` is not implemented for `Address`
[INFO] [stdout]   --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Address([u8; 20]);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for local types consider adding `#[derive(serde::Deserialize)]` to your `Address` type
[INFO] [stdout]    = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]    = help: the following other types implement trait `Deserialize<'de>`:
[INFO] [stdout]              &'a Path
[INFO] [stdout]              &'a [u8]
[INFO] [stdout]              &'a str
[INFO] [stdout]              ()
[INFO] [stdout]              (T,)
[INFO] [stdout]              (T0, T1)
[INFO] [stdout]              (T0, T1, T2)
[INFO] [stdout]              (T0, T1, T2, T3)
[INFO] [stdout]            and 145 others
[INFO] [stdout] note: required by a bound in `transaction::transaction::_::_serde::__private228::de::missing_field`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/private/de.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]    |        ------------- required by a bound in this function
[INFO] [stdout] 25 | where
[INFO] [stdout] 26 |     V: Deserialize<'de>,
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0277]: the trait bound `Address: serde::Serialize` is not satisfied
[INFO] [stdout]    --> src/transaction/transaction.rs:67:39
[INFO] [stdout]     |
[INFO] [stdout]  67 |           let data = bincode::serialize(&(
[INFO] [stdout]     |  ____________________------------------_^
[INFO] [stdout]     | |                    |
[INFO] [stdout]     | |                    required by a bound introduced by this call
[INFO] [stdout]  68 | |             &self.from,
[INFO] [stdout]  69 | |             &self.to,
[INFO] [stdout]  70 | |             self.amount,
[INFO] [stdout] ...   |
[INFO] [stdout]  73 | |             self.nonce,
[INFO] [stdout]  74 | |         )).unwrap();
[INFO] [stdout]     | |_________^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Serialize` is not implemented for `Address`
[INFO] [stdout]    --> src/crypto/keypair/address.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub struct Address([u8; 20]);
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for local types consider adding `#[derive(serde::Serialize)]` to your `Address` type
[INFO] [stdout]     = note: for types from other crates check whether the crate offers a `serde` feature flag
[INFO] [stdout]     = help: the following other types implement trait `Serialize`:
[INFO] [stdout]               &'a T
[INFO] [stdout]               &'a mut T
[INFO] [stdout]               ()
[INFO] [stdout]               (T,)
[INFO] [stdout]               (T0, T1)
[INFO] [stdout]               (T0, T1, T2)
[INFO] [stdout]               (T0, T1, T2, T3)
[INFO] [stdout]               (T0, T1, T2, T3, T4)
[INFO] [stdout]             and 132 others
[INFO] [stdout]     = note: required for `&Address` to implement `Serialize`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `(&Address, &Address, u64, u64, u64, u64)` to implement `Serialize`
[INFO] [stdout] note: required by a bound in `bincode::serialize`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-1.3.3/src/lib.rs:108:8
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub fn serialize<T: ?Sized>(value: &T) -> Result<Vec<u8>>
[INFO] [stdout]     |        --------- required by a bound in this function
[INFO] [stdout] 107 | where
[INFO] [stdout] 108 |     T: serde::Serialize,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `serialize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0423.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0423.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust_blockchain` (bin "rust_blockchain") due to 13 previous errors; 4 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "37c9e833dee07cf6689dac4af1683aca7538b8bff3ba99393b50092938668f4e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "37c9e833dee07cf6689dac4af1683aca7538b8bff3ba99393b50092938668f4e", kill_on_drop: false }`
[INFO] [stdout] 37c9e833dee07cf6689dac4af1683aca7538b8bff3ba99393b50092938668f4e
